#ifndef WHALEWINDOW_H
#define WHALEWINDOW_H

#include "toolbar.h"
#include "tabscreen.h"

#include <QMainWindow>

class QCloseEvent;

// All main windows inherit this class
// inherited by: HomeWindow, StartWindow, LoginWindow
// handles window state storing and modals
class WhaleWindow : public QMainWindow {
    Q_OBJECT 

    public:
        WhaleWindow( QWidget * parent = 0 );
        bool dialogsLocked(); // check if dialog can be opened
        void closeEvent( QCloseEvent * e ); // save state before closing

    public slots:
        void saveState(); // save window state
        void restoreState(); // open state from last session
        void setDialogsLocked( bool locked = false ); // dialog opened, lock others

    private:
        bool mDialogsLocked;
};

#endif
